#ifndef __userLedDriver__
#define __userLedDriver__

void userLedInitFunc(void);
void userLedSelfTest(void);
void userLedCtrlFunc(uint8_t userLedIndex);
void userLed1Blink(void);
void userLed2Blink(void);
void userLed4Blink(void);
void userLed5Blink(void);
void userLedBlink(void);
void userLed1BlinkTick(void);
void userLed2BlinkTick(void);
void userLed4BlinkTick(void);
void userLed5BlinkTick(void);



#define     LED1_POWER_B_ON         GPIO_SetBits(GPIOA,GPIO_Pin_3)
#define     LED1_POWER_B_OFF        GPIO_ResetBits(GPIOA,GPIO_Pin_3)

#define     LED1_POWER_Y_ON         GPIO_SetBits(GPIOA,GPIO_Pin_4)
#define     LED1_POWER_Y_OFF        GPIO_ResetBits(GPIOA,GPIO_Pin_4)

#define     LED2_LINK_B_ON         GPIO_SetBits(GPIOA,GPIO_Pin_5)
#define     LED2_LINK_B_OFF        GPIO_ResetBits(GPIOA,GPIO_Pin_5)

#define     LED2_LINK_Y_ON         GPIO_SetBits(GPIOA,GPIO_Pin_6)
#define     LED2_LINK_Y_OFF        GPIO_ResetBits(GPIOA,GPIO_Pin_6)

#define     LED3_MESH_B_ON         GPIO_SetBits(GPIOF,GPIO_Pin_1)
#define     LED3_MESH_B_OFF        GPIO_ResetBits(GPIOF,GPIO_Pin_1)

#define     LED3_MESH_Y_ON         GPIO_SetBits(GPIOF,GPIO_Pin_0)
#define     LED3_MESH_Y_OFF        GPIO_ResetBits(GPIOF,GPIO_Pin_0)

#define     LED4_CLOUD_B_ON         GPIO_SetBits(GPIOB,GPIO_Pin_0)
#define     LED4_CLOUD_B_OFF        GPIO_ResetBits(GPIOB,GPIO_Pin_0)

#define     LED4_CLOUD_Y_ON         GPIO_SetBits(GPIOB,GPIO_Pin_1)
#define     LED4_CLOUD_Y_OFF        GPIO_ResetBits(GPIOB,GPIO_Pin_1)

#define     LED5_IR_B_ON         GPIO_SetBits(GPIOA,GPIO_Pin_7)
#define     LED5_IR_B_OFF        GPIO_ResetBits(GPIOA,GPIO_Pin_7)

#define     LED5_IR_Y_ON         GPIO_SetBits(GPIOB,GPIO_Pin_3)
#define     LED5_IR_Y_OFF        GPIO_ResetBits(GPIOB,GPIO_Pin_3)

#define     LED_DELAY            userDelay2ms(250)   

#endif

